package com.link2room.ironhide.facade;


import com.link2room.common.jpa.result.QueryResult;
import com.link2room.ironhide.dto.param.base.RoomtypeBaseParamDto;
import com.link2room.ironhide.dto.result.base.L2RHotelRmtypePictureDto;
import com.link2room.ironhide.dto.result.base.L2RRoomtypeDto;

/**
 * Created by sss on 2016/8/29.
 */
public interface IRoomtypeFacadeService {

    /**
     * 房型基础信息列表
     * @param roomtypeInsideParamDto
     * @return
     * @throws Exception
     */
    QueryResult<L2RRoomtypeDto> listRoomType(RoomtypeBaseParamDto roomtypeInsideParamDto)throws Exception;
    /**
     * 房型基础信息
     * @param roomtypeInsideParamDto
     * @return
     * @throws Exception
     */
    L2RRoomtypeDto getRoomtypeDtoById(RoomtypeBaseParamDto roomtypeInsideParamDto)throws Exception;

    L2RRoomtypeDto getRoomtypeDtoByRmtype(RoomtypeBaseParamDto roomtypeBaseParamDto)throws Exception;

    L2RRoomtypeDto getRoomtypeDto(RoomtypeBaseParamDto roomtypeBaseParamDto)throws Exception;

    /**
     * 保存房型
     * @param roomtypeBaseParamDto
     * @return
     * @throws Exception
     */
    L2RRoomtypeDto saveOrUpdateRoomtypeDto(RoomtypeBaseParamDto roomtypeBaseParamDto)throws Exception;

    L2RRoomtypeDto saveOrUpdateRoomtypeBase(RoomtypeBaseParamDto roomtypeBaseParamDto)throws Exception;

    QueryResult<L2RHotelRmtypePictureDto> getRmtypePics(RoomtypeBaseParamDto roomtypeInsideParamDto) throws Exception;

    QueryResult<L2RHotelRmtypePictureDto> getRmtypeBigPic(RoomtypeBaseParamDto roomtypeInsideParamDto) throws Exception;
}
